home *** CD-ROM | disk | FTP | other *** search
/ Ham Radio 2000 / Ham Radio 2000.iso / ham2000 / satellit / pg920225 / pgdoc.asc < prev    next >
Text File  |  1992-02-25  |  43KB  |  1,099 lines

  1.  
  2.  
  3.  
  4. Important notes added 09/09/91, 21/12/91 and 25/02/92. See the end of this 
  5. documentation. 
  6.  
  7.  
  8.  
  9.  
  10.  
  11.  
  12.  
  13. PG IS NOW A PROGRAM FOR THE UPLOADING OF MESSGAGES ONLY. FOR DOWNLOADING 
  14. MESSAGES OR DIRECTORIES, USE PB.
  15.  
  16.  
  17.  
  18.  
  19.  
  20.  
  21.  
  22.  
  23.  
  24.  
  25.  
  26.  
  27.  
  28. DOCUMENTATION FOR PG
  29. ------------------------
  30.  
  31. PG is a program for accessing satellites which use the 'PACSAT Protocol 
  32. Suite'.  PG implements a file transfer protocol (called FTL0) which is 
  33. used for uploading file to and downloading messages from PACSAT servers.  In 
  34. the FTL0 protocol, your computer is not used as a 'dumb terminal'; instead, it 
  35. becomes an intelligent 'client' interacting automatically with the satellite.  
  36. This program - PG - is the client software.
  37.  
  38. [Notes concerning bug fixes and updates can be found at the end of the file.]
  39.  
  40.  
  41. COMPATIBILITY
  42. -------------
  43.  
  44. PG runs on IBM-compatible MS-DOS PCs.  Your machine must have a hard disk.  
  45. A high-speed machine (12 MHz AT) is recommended for 9600 bit/sec. operation on 
  46. UoSAT-3.
  47.  
  48. Your TNC must use a TAPR-compatible command set. You cannot use a TNC which 
  49. has only a KISS EPROM in it. The WA8DED firmware is not supported. There have 
  50. been several reports that firmware versions other than TAPR version 1.1.7 work 
  51. poorly - if at all - with PG. In particular, you must confirm proper operation 
  52. of the BUDLIST and LCALL commands.
  53.  
  54.  
  55. PREPARATION
  56. -----------
  57.  
  58. 2.1 Directory Structure
  59.  
  60. The programs written by G0/K8KA for use with the PACSAT protocol suite are 
  61. best used by having a different DOS directory for each PACSAT satellite you 
  62. intend to use.  For example, you could use
  63.  
  64. \UOSAT3
  65. \PACSAT
  66. and
  67. \LUSAT
  68.  
  69. Of course, your executable files must be somewhere where DOS can find them.  
  70. It is easiest to put the executables in a directory which is in your MS-DOS 
  71. path.
  72.  
  73. 2.2 File Naming Conventions
  74.  
  75. Each file stored on a PACSAT server (usually a MicroSat or UO-14) has a file 
  76. number.  PG uses these file numbers widely: when PG downloads a file, 
  77. the base name is composed of the hexadecimal representation of the file 
  78. number; when PG uploads a file, your copy of the file is renamed with the 
  79. file number assigned to it by the satellite. 
  80.  
  81. Files associated with the PACSAT Groundstation Software can be in one of many 
  82. states.  To organize the files, each state is reflected in the file name.  The 
  83. table below shows how PG and PB use file names.  
  84.  
  85. Base names shown as 'xxxxxxxx' will be replaced by a hexadecimal serial number 
  86. assigned by PACSAT.
  87.  
  88. STATE                                   File name       Program
  89. not prepared for upload                    yourname.ext     any
  90. prepared for upload                        yourname.OUT     PFHADD
  91. partly uploaded                           xxxxxxxx.PUL     PG
  92. completely uploaded                        xxxxxxxx.UL     PG
  93. upload permanently abandoned                xxxxxxxx.XUL     PG
  94. partially downloaded by PG                  xxxxxxxx.PDL     PG
  95. completely downloaded by PG                 xxxxxxxx.DL     PG, PB
  96. download permanently abandoned               xxxxxxxx.XDL     PG
  97. downloaded and post-processed by PHS          xxxxxxxx.DLX     PHS
  98. hole list file used by PB.EXE               xxxxxxxx.HOL     PB
  99. backup hole list file                      xxxxxxxx.OLH     PB
  100. broadcast partially received by PB.EXE        xxxxxxxx.ACT     PB
  101. your configuration file                    PG.CFG          PG, PB
  102. log file                                 PG.LOG          PG
  103. time of newest bulletin dir rcvd             HIGHTIME.PG     PG
  104. time of newest personal dir rcvd             HIGHTIME.MY     PG
  105. a file of directory entries                 PG.DIR          PG
  106. backup directory file                      PGOLD.DIR       PG
  107. archive directory file                     PGARCH.DIR      PG
  108. numbers of downloaded files                 PGPBDL.DAT      PG [PB soon]
  109.  
  110. 2.3 Connecting the TNC
  111.  
  112. PG uses hardware handshaking.  You MUST have a full RS-232 cable between 
  113. you PC and your TNC.  The following lines are mandatory:
  114.  
  115.      Ground
  116.      TX data
  117.      RX data
  118.      RTS
  119.      CTS
  120.      DCD
  121.  
  122. The DCD line must indicate whether or not your TNC is in connected mode.  This 
  123. signal is also used by BBS software.  Most TNCs implement this signal.
  124.  
  125. (Some early PacCom TINY-2 TNCs incorrectly implemented the DCD connect line.  
  126. A technical note describing a fix for these TNCs is available from PacCom.)
  127.  
  128.  
  129. 2.4 Setting the TNC
  130.  
  131. You may run your TNC terminal ('async') port at the same speed as the radio 
  132. port, but you will get some improvement if you use a speed greater than the 
  133. downlink speed.  For the 9.6 kbit/sec link on UOSAT-3, you will should use 
  134. 19.2 kbits/sec.  For the Microsats use 2.4 kbits/sec or higher.
  135.  
  136. Because PG uses full hardware handshaking with the TNC, you can use a slower 
  137. asynchronous port speed if you need to. This makes operations sluggish, but 
  138. may cure some problems with missed characters.
  139.  
  140. PG expects your TNC to be configured for 8 data bits, and no parity.  You 
  141. must configure your TNC in this way before running PG for the first time.  
  142. Use the commands below:
  143.  
  144. cmd:AWLEN 8
  145. cmd:PARITY 0
  146. cmd:RESTART
  147.  
  148. Remember that after this, for non-PACSAT operations, you'll have to change 
  149. your terminal emulator to use 8 data bits and no parity. 
  150.  
  151.  
  152. 2.5 The Configuration File - PG.CFG
  153.  
  154. PG reads configuration information from a file called PG.CFG.  (This same file 
  155. can also be used for the bulletin receiving program, PB.EXE.)  The 
  156. configuration file must be an ASCII file. It should contain no control 
  157. characters. Entries in the file can be in either upper or lower case.  Each 
  158. config file entry is a single line.  Each line begins with a key word, which 
  159. is followed by an argument. Invalid or incorrect lines in the configuration 
  160. file are ignored.
  161.  
  162. PG recognises the following key words:
  163.  
  164. speed, port, mycall, bbscall, log, silent, maxdupes, debug, max_backoff, 
  165. backoff_slot, maxsel, myaddr. 
  166.  
  167. 2.5.1 Station Callsign
  168.  
  169. mycall <call>[-<ssid>]
  170.  
  171. sets your callsign and SSID. In the absence of a myaddr entry, it also sets 
  172. you address for personal mail. Default none. 
  173.  
  174. 2.5.2 Async Speed
  175.  
  176. speed <baudrate> 
  177.  
  178. sets the TNC asynchronous port speed.  Acceptable baud rates are 300, 1200, 
  179. 2400, 4800, 9600 or 19200. Default 19200.
  180.  
  181. 2.5.3 Async Port
  182.  
  183. port  <comnumber>
  184.  
  185. sets the communications port.  Only 1 and 2 are supported. Default COM1.
  186.  
  187. 2.5.4 Server Callsign
  188.  
  189. bbscall <call>[-<ssid>]
  190.  
  191. sets the satellite FTL0 server callsign.  (use UOSAT3-12 or PACSAT-12)
  192. Default "uosat3-12".
  193.  
  194. 2.5.5 Activity Logging
  195.  
  196. log 0 
  197.  
  198. turns off the station activity log.  The default is ON.
  199.  
  200. 2.5.6 Progress Signals
  201.  
  202. silent 1
  203.  
  204. turns off the audible progress signals. The default is "slient off".
  205.  
  206. 2.5.7 Debugging Output
  207.  
  208. debug <n>
  209.  
  210. The argument is a hexadecimal number (No leading 0x) representing a bit field.  
  211. The following bits have meaning:
  212.  
  213. bit 0 - Report all received bytes.  For debugging TNC interfaces. Note that 
  214. this causes A LOT of output.  Only fast machines will reliably communicate 
  215. with UO-14 if this bit is set.
  216.  
  217. bit 1 - Allow the user to verify any change from connected to disconnected 
  218. status.  For debugging or overcoming problems with flickering CON lines.
  219.  
  220. Thus 'debug 3' turns on maximum debugging in the current version.
  221.  
  222. 2.5.8 Duplicate Directory Entries
  223.  
  224. maxdupes <n>
  225.  
  226. sets the maximum number of duplicate entries that PG will allow in the PG.DIR 
  227. file before doing "garbage collection" on that file. The default is 100. 
  228. Duplicates get into PG.DIR when the satellite sends you a directory entry for 
  229. a file you already have in your directory. You do not see the duplicates on 
  230. the screen, because the display program filters them out.  Garbage collection 
  231. means renaming the existing PG.DIR file to PGOLD.DIR and writing a new file 
  232. without any duplicates.  This may take some time on slower machines.  On the 
  233. other hand, the existance of duplicates in PG.DIR makes the file longer, which 
  234. consumes some time when you to do a View Directory.  This is a tradeoff, you 
  235. may get a couple of duplicates every time you access the satellite, so if you 
  236. set your maxdupes to 10, you will have garbage collection once per day.  
  237.  
  238. You can force a "garbage collection" at any time by using the Utility submenu, 
  239. Dupes selection.
  240.  
  241. 2.5.9 Server Select Limit
  242.  
  243. maxsel <n>
  244.  
  245. Default 50.
  246.  
  247. This must be set to the correct value provided by satellite operators. This is 
  248. the maximum number of files which will be returned by the server for a single 
  249. SELECT command. The correct setting of this variable permits PG to 
  250. automatically complete directories which take several SELECT/DIR cycles. 
  251. Incorrect setting will make this automatic completion inoperative. (You will 
  252. still get complete directories using manual commands.)
  253.  
  254. Although this may change, it is currently 50 on UoSAT-OSCAR-14 and 30 for the 
  255. Microsats.
  256.  
  257. 2.5.10 Random Backoff Limit
  258.  
  259. max_backoff <n> 
  260.  
  261. Default 2. Maximum number of backoff slots to wait before attempting to 
  262. connect after receiving a BBSTAT "Open" message. See backoff_slot below.
  263.  
  264. 2.5.11 Random Backoff Time Slot
  265.  
  266. backoff_slot <n>
  267.  
  268. Default 18 (1 second)
  269.  
  270. The duration of each backoff slot, in units of approximately 1/18 second. 
  271. After receiving a BBSTAT message with "Open" (e.g. an indication that the 
  272. satellite has an open slot for a user), PG will wait for between 1 and 
  273. max_backoff 'backoff slots', then request the TNC to connect to the satellite. 
  274. This is an experimental feature, and we suggest that you use the defaults for 
  275. the time being. With the default configuration, the gap will be either 1 or 2 
  276. seconds between receipt of the BBSTAT "Open" message and the request for the 
  277. TNC to connect. (See "Login Sequence" below for further discussion.)
  278.  
  279. 2.5.12 Address For Personal Mail
  280.  
  281. myaddr <string>
  282.  
  283. Defaults to the same string as mycall, without the SSID. When you activate 
  284. "My" mail directory command from the main menu, PG must have some means of 
  285. identifying your mail. The <myaddr> string should hold your 'network address'. 
  286. For most stations, this is simply the callsign. For example, G3YJO wants to 
  287. see any mail with destination address containing the string "G3YJO". Expressed 
  288. in wildcards, this is "*G3YJO*". In some cases, <mycall> and <myaddr> should 
  289. be different. G0/K8KA uses the AX.25 callsign G0K8KA, but would like to get 
  290. mail for "G0/K8KA", "K8KA", "GOK8KA". In this case, the wildcard would be 
  291. "*K8KA*", and so <myaddr> should be set to "K8KA".
  292.  
  293.  
  294. 2.5.13 Example
  295.  
  296. An example configuration file for using UoSAT-OSCAR-14 with the TNC running at 
  297. 19200 on com2: would be
  298.  
  299. port 2
  300. speed 19200
  301. mycall g0k8ka-0
  302. myaddr k8ka
  303. bbscall uosat3-12
  304. maxsel 50
  305.  
  306. For PACSAT, I must adjust the <maxsel> setting to match the PACSAT onboard 
  307. software:
  308.  
  309. port 2
  310. speed 19200
  311. mycall g0k8ka-0
  312. myaddr k8ka
  313. bbscall PACSAT-12
  314. maxsel 30
  315.  
  316. Put a configuration file called PG.CFG in each of the PACSAT directories you 
  317. have made.  Make sure that each has the appropriate <mycall>, <bbscall> and 
  318. <maxsel> in it.
  319.  
  320.  
  321. 2.6 TNC Configuration File - PG.TNC
  322.  
  323. You must also have a TNC command file called PG.TNC.  PG configures your TNC 
  324. at the beginning of PACSAT operations. First, PG issues built-in configuration 
  325. commands, then it sends the commands you provide in the file PG.TNC.
  326.  
  327. The automatically generated configuration commands are:
  328.  
  329. mon off
  330. trflow off
  331. txflow off
  332. xflow off
  333. rxblock off
  334. conmode trans
  335. newmode on
  336. nomode off
  337. lfadd off
  338. echo off
  339. mcom off
  340. mcon off
  341. mall off
  342. budlist on
  343.  
  344. Use PG.TNC to customize TNC parameters for particular satellites.  In 
  345. particular, you should set FULLDUP, FRACK, MAXFRAME, PACLEN, PACTIME, 
  346. CHECKTIME and RETRIES to appropriate values.  
  347.  
  348.  
  349. 2.7 TNC Deconfiguration File
  350.  
  351. When you exit PG, some commands are automatically sent to the TNC, followed by 
  352. the contents of the file PGDONE.TNC. 
  353.  
  354. The automatically generated commands are:
  355.  
  356. d
  357. conmode conv
  358. echo on
  359. mon off
  360.  
  361. Use PGDONE.TNC to return the TNC to whatever configuration you prefer for your 
  362. non-PACSAT operation, e.g. BUDLIST OFF, LCALLS %, etc. Remember, however, that 
  363. if you change the asynchronous communications parameters of the TNC (AWLEN or 
  364. PARITY), you will not be able to run PG without manually returning to
  365.  
  366. AWLEN 8
  367. PARITY 0
  368.  
  369. PGDONE.TNC is also sent to the TNC when you enter Terminal mode from the main 
  370. menu.
  371.  
  372.  
  373. 3.0 RUNNING PG
  374. ------------------
  375.  
  376. 3.1 Starting the Program
  377.  
  378. The possible command lines for running PG are
  379.  
  380. C:>pg
  381.  
  382. C:>pg <environment variable>
  383.  
  384. C:>pg <directory>
  385.  
  386. With no argument, PG will read and write files in the current directory.
  387.  
  388. If the command line argument is the name of an environment variable, PG 
  389. will try to use the directory named by the environment variable. (Create 
  390. environment variables using the SET command in your AUTOEXEC.BAT file.)
  391.  
  392. If the command line argument is not the name of an environment variable, 
  393. PG will use your command line argument itself as the name of a directory.
  394.  
  395. 3.1.1 WHY?
  396.  
  397. This is to make it easy to use several PACSAT satellites without getting 
  398. confused.
  399.  
  400. The simplest way to run PG for UoSAT-3 would be to
  401.  
  402. C:>cd \uosat3
  403. C:>pg
  404.  
  405. But if you don't want to bother with the cd command you could
  406.  
  407. C:>pg \uosat3
  408.  
  409. And if you keep your satellite directories in some strange place, you could 
  410. add to your autoexec.bat file set of lines like:
  411.  
  412. SET UO3=C:\DATA\AMSAT\OSCAR14
  413. SET PAC=C:\DATA\AMSAT\OSCAR16
  414. SET LU=C:\DATA\AMSAT\OSCAR17
  415.  
  416. then
  417.  
  418. C:>pg pac
  419.  
  420. would get you to the correct directory for OSCAR-16 from anywhere on your 
  421. machine.
  422.  
  423. C:>pg uo3
  424.  
  425. would get you to the correct directory for OSCAR-14, etc.
  426.  
  427.  
  428. 4.0 THE DISPLAY
  429. ---------------
  430.  
  431. The PG display is divided into three sections. The top 23 lines of the screen 
  432. are devoted to a scrolling 'main window' showing progress reports, function 
  433. status, TNC commands, etc. The 24th line is the 'status line', and the 25th is 
  434. the 'menu line'.
  435.  
  436. 4.1 The Menu Line
  437.  
  438. PG presents menus on the bottom line of the display. Each menu presents 
  439. several functions, and for each function a single character is highlighted.  
  440. To select a function, type its highlighted character. Do not hit the [enter] 
  441. key after this.
  442.  
  443. 4.2 The Status Line
  444.  
  445. Above the menu line is a status line.  The first word on the status line will 
  446. always be the PG 'state'. This will be followed by either program 
  447. configuration information or a supplementary status message.
  448.  
  449. 4.2.1 PG State 
  450.  
  451. The 'state' indication on the status line tells you what PG is doing or 
  452. waiting for. The following states may be shown:
  453.  
  454. Ready     The PG Main menu is active. You can select functions.
  455. Terminal   PG is in Terminal mode. 
  456. Utility    The Utility submenu is active. 
  457. Dir       The Directory Viewer is active.
  458. WAITING    PG is waiting for a BBSTAT "Open" message from the satellite.
  459. BACKOFF    PG is getting ready to make a connect request.
  460. REQUEST    PG has issued a connect request.
  461. LINKED     PG is linked to the satellite, executing a function.
  462.  
  463.  
  464. 5.0 COMMUNICATIONS FUNCTIONS
  465. ----------------------------
  466.  
  467. The satellite must be in range if PG is to receive new directory entries, 
  468. upload a file, or download a file. PG must establish an AX.25 connection with 
  469. the satellite to perform these functions. Communications functions are all 
  470. automatic; you never type 'connect', 'disconnect' or any other TNC command. 
  471. You simply select a function from the Main menu, and wait while PG executes 
  472. the appropriate commands. When a function is executing, progress reports 
  473. appear in the main window, and the state indicator is updated whenever the 
  474. state changes. 
  475.  
  476. When an communications function is completed, 'Ready', will appear in the 
  477. State Indicator. You can initiate a new communications function only if the 
  478. state is 'Ready'.
  479.  
  480. To abort a communications function when the state is not 'Ready', type the 
  481. [escape] key.
  482.  
  483. 5.1 Link Establishment
  484.  
  485. The first step in all communications functions is for PG to establish a link 
  486. to the satellite. During link establishment, PG goes through several states: 
  487. WAITING, BACKOFF, REQUEST, and LINKED.
  488.  
  489. WAITING 
  490. -------
  491.  
  492. - PG is waiting for a free user position on the satellite. 
  493.  
  494. Each PACSAT supports a limited number of concurrent users. If the maximum 
  495. number of users are already connected to the server, the server is 'FULL'. If 
  496. engineering work is under way, the server is 'SHUT'. Otherwise, the server is 
  497. 'Open'. Only when the server is Open will PG attempt to connect to the 
  498. satellite. The server indicates its current state in a beacon message from 
  499. <bbscall> to 'BBSTAT', e.g.
  500.  
  501. UOSAT3-12>BBSTAT: Open  2 : G0K8KA
  502.  
  503. or 
  504.  
  505. UOSAT3-12>BBSTAT: FULL   : I2KBD PE3BHF
  506.  
  507. When you select a connected function from the main menu, PG enters the WAITING 
  508. state. PG is waiting for a BBSTAT message showing that the server is Open. 
  509.  
  510. BBSTAT beacons are transmitted every 5 seconds by UO-14, and whenever a 
  511. station disconnects from the server. On PACSAT and LUSAT, the beacons are only 
  512. transmitted every 30 seconds or when a station diconnects. To avoid a long 
  513. wait on PACSAT and LUSAT, PG makes an initial connect attempt before receiving 
  514. a BBSTAT message. If this initial connect attempt fails, PG enters the 
  515. standard WAITING state.
  516.  
  517. When PG does receive a BBSTAT beacon showing the server Open, it enters the 
  518. BACKOFF state.
  519.  
  520. BACKOFF
  521. -------
  522.  
  523. If several PG stations are in the WAITING state, and PACSAT sends a BBSTAT 
  524. Open beacon, all of the stations might attempt to connect immediately. This 
  525. would result in a collision on the uplink. In an attempt to limit this great 
  526. collision, PG implements a slotted random backoff. A random number R between 1 
  527. and <max_backoff> is generated. PG then waits (R * <backoff_slot> * 1/18) 
  528. seconds before moving to the REQUEST state. 
  529.  
  530. REQUEST
  531. -------
  532.  
  533. PG issues a connect request to the TNC and enters the REQUEST state. PG then 
  534. waits (1) to get connected, (2) for a busy indication from the satellite, or 
  535. (3) for a retry count exceed message from the TNC.
  536.  
  537. If a connection is established, the PG State Indicator will show LINKED, and 
  538. the communications function will proceed. Otherwise, PG will return to the 
  539. WAITING state.
  540.  
  541. 5.1.1 Further Technical Details of Link Establishment
  542.  
  543. When you activate a communications function which requires a link to the 
  544. satellite, PG will do one of two things: if the <bbscall> is other than 
  545. 'UOSAT3-12', PG will immediately go to the REQUEST state; if the <bbscall> is 
  546. 'UOSAT3-12', PG will begin with the WAITING state. This difference stems from 
  547. the fact that UoSAT-OSCAR-14 sends its "BBSTAT" message every five seconds, 
  548. while the Microsats send BBSTAT less frequently. For the Microsats, making a 
  549. first "blind" connect attempt may save a lot of valuable pass time.
  550.  
  551. When PG is in the REQUEST state, it is waiting for one of three events:
  552.  
  553.      1 - a connect indication on the RS232 DCD signal;
  554.      2 - the byte 0x05 received from the TNC asynch link;
  555.      3 - the string 'disconnected' in upper/lower/mixed case from the TNC.
  556.  
  557. Both 1 and 2 show that a link to PACSAT has been established (0x05 is the 
  558. first byte of the first FTL0 protocol packet which is always sent when you 
  559. connect to PACSAT). Event 3 shows that either the server was busy or the TNC 
  560. retried out - no distinction is made.
  561.  
  562. If you see the ;) face in the REQUEST state, condition (2) was met before 
  563. (1). This is not an error, but it is an interesting indication of the timing 
  564. of TNC events.
  565.  
  566. Assuming that (1) above has happened, PG will throw away any extraneous 
  567. characters on the link (e.g. left over CMD: responses or monitored packets) 
  568. and enter LINKED mode when the 0x05 is found in the input stream.
  569.  
  570. The scans for "open" and for "disconnected" are intended to be general enough 
  571. to support a variety of TNCs. No assumption is made about the format of the 
  572. "disconnected" message or the display of monitored beacon packets.
  573.  
  574. 5.1.2 Aborting a Communications Function 
  575.  
  576. If you wish to give up; e.g. the satellite has gone over the horizon, you may 
  577. hit the ESCAPE key during any stage of the wait/backoff/request process.
  578.  
  579. 5.2 Directory Downloading
  580.  
  581. 'Directories' tell you about the files on PACSAT. A PACSAT Protocol server can 
  582. transmit a single directory entry or the entries from a 'selection' of files. 
  583. PACSAT can create complex 'selections' of files, based on the many fields in 
  584. the PACSAT File Header. PG implements four directory selection/downloading 
  585. commands which request simple, useful file selections.
  586.  
  587. Command         Requests
  588. -------         --------
  589. Mine           directories for all new files to "*<myaddr>*".
  590. Bulls          directories for all new files to "all".
  591. All            directories for all new files.
  592. One            directory for a single file which you specify.
  593.  
  594. When PG downloads a directory entry from the server, the entry is added to a 
  595. permanent database which can be viewed with the View Directory command, 
  596. described below. 
  597.  
  598. 5.2.1 New File Times
  599.  
  600. The commands Mine, Bulls and All, must request 'new' files from the server. 
  601. When formulating the request (also called a "select request") to send to 
  602. PACSAT, PG reads the time from one of the two files HIGHTIME.MY or 
  603. HIGHTIME.PG.
  604.  
  605. HIGHTIME.PG is used by the Bull command.
  606.  
  607. HIGHTIME.MY is used by the Mine command.
  608.  
  609. The All command uses the older of HIGHTIME.MY and HIGHTIME.PG. Upon completing 
  610. a an All file directory, both HIGHTIME files are updated.
  611.  
  612. This implementation was designed to permit three modes of operation: either 
  613. you use "Mine" only, you use "Mine" and "Bulls", or you use "All" only. If you 
  614. are only interested in messages specifically to you, "Mine" alone will provide 
  615. quick and efficient operation. If you also want to check for bulletins you may 
  616. be interested in, use "Bulls". If you feel that you want to view every single 
  617. message or file ever uploaded to the server, then use "All".
  618.  
  619. You can safely mix "Mine" and "All" though you can miss some of the messages 
  620. not directly addressed to you. 
  621.  
  622. 5.3 Directory View
  623.  
  624. PG saves the results of all file list commands in a single directory file 
  625. called PG.DIR.  You can view the contents of PG.DIR using the View command.
  626.  
  627. When you select 'V' from the main menu, PG enters directory display mode, 
  628. indicated by DIR on the status line.  The directory is presented with the 
  629. newest files at the top and the older files at the bottom.  For example:
  630.  
  631. --------|----------|----------|-------------|-------|---------------------|--  
  632. number  |   to     |  from    |    time     | size  |  title / file name  |dl  
  633. --------|----------|----------|-------------|-------|---------------------|--  
  634.     ddd |    dl6kg |    df5dp | 11:45 01/03 |    635|Antworten            | 1  
  635.     ddc |    w3qns |   g0k8ka | 10:14 01/03 |    425|KISS Keying          | 6  
  636.     ddb |   ja6ftl |    db2os | 08:24 01/03 |    880|AO21 RX              | 0  
  637.     dda |    db2os |   wa2lqq | 04:40 01/03 |    939|Was Bedeutet LZH?    | 1  
  638.     dd9 |    rk3kp |   wa2lqq | 03:05 01/03 |    576|Kak Dela Gala?       | 1  
  639.     dd8 |    db2os |    K8IRC | 03:01 01/03 |    299|RUDAK ON?            | 2  
  640.     dc3 |     none |     none | 00:00 01/03 |  30023|AL910228   .         |    
  641.     dc2 |     none |     none | 23:55 28/02 |  36974|cp910228   .         |    
  642.     dd5 |   ja6ftl |    on5pv | 23:37 28/02 |    629|my station           | 2  
  643.     dd4 |   ik4idy |    i6cge | 22:01 28/02 |   1849|risposta             | 0  
  644.     dd3 |   vk5agr |    db2os | 21:55 28/02 |    536|fax                  | 5  
  645.     dd2 |    rk3kp |    db2os | 21:55 28/02 |   1940|CW tlm question      | 4  
  646.     dd1 |      all | db2os+rk | 21:55 28/02 |    492|AO-21: CW tlm data n | +  
  647.     dd0 |      all |    OH2SN | 18:48 28/02 |   1376|Auto frq tracking    | 9  
  648.     dcf |  g0/k8ka |    w3qns | 17:28 28/02 |    215|ignore last          |>>1  
  649.     dce |   g0k8ka |    w3qns | 17:20 28/02 |    657|PB PROBLEMS??        |>>5  
  650.     dcc |     wd3q |   ja6ftl | 15:06 28/02 |   1410|QSP from Bob,ve8dx   | 2  
  651.     dcb |    db2os |   ja6ftl | 13:27 28/02 |    748|RUDAK throughput ?   | +  
  652.     dca |     wd3q |   ja6ftl | 13:27 28/02 |   1018|reply KENWOOD        | 5  
  653.     dc9 |      all |   ja6ftl | 13:27 28/02 |   3222|Need comment raised  | +  
  654.  
  655. number - is PACSAT's ID number for the message. This is also called the file 
  656. number.
  657.  
  658. to - shows the destination field from the PACSAT file header (PFH) of the 
  659. file.
  660.  
  661. from - shows the source field from the PFH.
  662.  
  663. time - shows the time that the file was completely uploaded.
  664.  
  665. size - is the size of the file in bytes.
  666.  
  667. title/file name - usually shows the title of the message from the PFH subject 
  668. field. For some files which are created by processes onboard the satellite, 
  669. the title will show the file name; in the example above, message number dc3 is 
  670. 'al910228', an activity log file for the 28th of February, 1991.
  671.  
  672. dl - provides two items. The number shows how many times the file had been 
  673. downloaded before you got your directory. If this is greater than 9 times, a 
  674. "+" appears.  The dl column also shows whether or not you have downloaded the 
  675. file. If you have, a ">>" character will appear before the number of 
  676. downloads. This is shown in messages dce and dcf above.
  677.  
  678. You can move around the directory list with the arrow keys, [pg up], [pg dn], 
  679. [home] and [end]. [home] takes you to the newest messages, while [end] takes 
  680. you to the oldest messages. [Up arrow] and [down arrow] move you one message 
  681. at a time toward the newer or older messages.
  682.  
  683. The [right arrow] key will change the display to show 40 characters of the 
  684. message title and 25 characters of keywords. This is useful if the message 
  685. title is long, and has been truncated in the normal display. Keywords help you 
  686. find out what a message is about, if the title isn't clear. When you press the 
  687. [right arrow] key, your display should look like the one below.
  688.  
  689. --------|------------------------------------------|-------------------------  
  690. number  |                 Title                    |      Keywords             
  691. --------|------------------------------------------|-------------------------  
  692.     ddd | Antworten                                |117a qex                   
  693.     ddc | KISS Keying                              |                           
  694.     ddb | AO21 RX                                  |AO-21                      
  695.     dda | Was Bedeutet LZH?                        |                           
  696.     dd9 | Kak Dela Gala?                           |                           
  697.     dd8 | RUDAK ON?                                |                           
  698.     dc3 | AL910228   .                             |                           
  699.     dc2 | cp910228   .                             |                           
  700.     dd5 | my station                               |                           
  701.     dd4 | risposta                                 |uosat-3                    
  702.     dd3 | fax                                      |                           
  703.     dd2 | CW tlm question                          |AO21                       
  704.     dd1 | AO-21: CW tlm data needed!               |Help CW telemetry          
  705.     dd0 | Auto frq tracking                        |The Best                   
  706.     dcf | ignore last                              |                           
  707.     dce | PB PROBLEMS??                            |pb request                 
  708.     dcc | QSP from Bob,ve8dx                       |qsp from north arct        
  709.     dcb | RUDAK throughput ?                       |RUDAK BBS THROUGHPU        
  710.     dca | reply KENWOOD                            |                           
  711.     dc9 | Need comment raised cosine.              |RAISED COSINE QUEST        
  712.  
  713. Not all files have keywords, but well-chosen keywords make PACSAT operations 
  714. more efficient by directing you toward files you are interested in and away 
  715. from others.
  716.  
  717. To return to the standard directory display, use the [left arrow] key.
  718.  
  719. In both directory displays, messages with your <myaddr> in the destination 
  720. field will be hilighted. If you have not got <myaddr> in your pg.cfg file, 
  721. <mycall> is used instead.
  722.  
  723. To exit the directory view system, type the Q key.
  724.  
  725.  
  726. 5.4 Download
  727.  
  728. You use the Download selection from the main menu to get a file from PACSAT.  
  729.  
  730. Generally, you should use PG to download mail which is specifically addressed 
  731. to you, and not of interest to other PACSAT groundstations.  Most files - 
  732. bulletins or general interest items - should be downloaded using the PACSAT 
  733. Broadcast Protocol (using the program PB.EXE).
  734.  
  735. When you select 'D' from the main menu, PG will either complete an interrupted 
  736. download or begin a new download.
  737.  
  738. 5.4.1 Beginning a New Download
  739.  
  740. Before you can download a file, you must know its file serial number (file 
  741. number).  You can read this from the first column of the directory view 
  742. display (described below).
  743.  
  744. If there is no partial download which needs to be completed, you will be 
  745. prompted for the number of the file you wish to download.  PG will display the 
  746. prompt:
  747.  
  748. "File number (in hex w/o leading 0x):"
  749.  
  750. You must respond with the file number, and hit [enter]. Type the file number 
  751. as it is displayed in the directory view. (This is a hexadecimal number, so it 
  752. may contain digits from 0-9 and characters from a-f; just think of it as a 
  753. unique message identifier) When you have entered the number and hit [enter], 
  754. PG will print a message like
  755.  
  756. "Requesting D/l of file 0x1A3B5."
  757.  
  758. and try to establish a connection to the server to begin downloading the file.  
  759. Of course, "1A3B5" will show the actual file number you entered.
  760.  
  761. 5.4.2 Download Continuing
  762.  
  763. If a previous download was interrupted by LOS or other link failure, PG will 
  764. save the partially downloaded file. It will have the file name extension 
  765. '.pdl'. 
  766.  
  767. If you select 'D' from the main menu, and there is a '.pdl' file in your 
  768. working directory, PG will try to continue the partial download.  You will not 
  769. be asked to enter a file number. PG displays a message like
  770.  
  771. "Continuing D/L of 0x1A3B5 at offset 0x1056."
  772.  
  773. and establishs a connection to the server to begin the download.
  774.  
  775. The only way that you can prevent PG from attempting to continue a partial 
  776. download is to delete or rename the '.pdl' file before selecting D from the 
  777. main menu.
  778.  
  779. 5.4.3 Download Process 
  780.  
  781. During the download, PG will display several lifesigns.
  782.  
  783. "Initiating download..."
  784.  
  785. is displayed as PG sends the download request to the server.  If the server 
  786. accepts the request
  787.  
  788. is displayed. If the download is proceeding successfully, the display will 
  789. show the number of bytes received thus far, in a display like
  790.  
  791. "Received : 253"
  792.  
  793. When the download completes, PG calculates the throughput for the download and 
  794. displays a message like
  795.  
  796. "Throughput : 243 bytes/sec."
  797.  
  798. This message is displayed whether download completes successfully or is 
  799. aborted. If there has not been an error, PG attempts a final handshake with 
  800. the server to inform the server that the download was successful. Upon 
  801. completing the handshake, PG prints 
  802.  
  803. "Download completed."
  804.  
  805. When a download is complete, your desired file will be in the working 
  806. directory in a file with the extension '.dl'. The file name body will be the 
  807. message number; for the examples above, the file would be called '1a3b5.dl". 
  808. After you download a file, use the program PHS.EXE to see the file's header 
  809. information and to extract the 'file body', which is the information portion 
  810. of the file.
  811.  
  812. 5.4.4 Download Failures 
  813.  
  814. A download failure will always be accompanied by an error message:
  815.  
  816. "DOWNLOAD refused ()", with further details in the () is an orderly error 
  817. report from the server. The most likely report is "numbered file does not 
  818. exist", which means that the file you have chosen is no longer available on 
  819. the server. When a download is refused, the associated file is renamed with 
  820. the extension '.xdl', so no further attempts will be made to continue the 
  821. download.
  822.  
  823. "Packet rx failed during wait for final handshake." indicates that the entire 
  824. file has been downloaded, but PG never received the last handshake from the 
  825. server.
  826.  
  827. "Unexpected packet while waiting for data or data_end." and "Unexpected 
  828. response to the DOWNLOAD command." indicate corruption of data between the TNC 
  829. and PC or failure of the server (satellite) software. This is usually an 
  830. indication of incorrect handshaking between your PC and TNC, or of data loss 
  831. due to slow operation of your PC.
  832.  
  833. If a download is interrupted after data has been received, the partially 
  834. downloaded file will be stored in a file named wth the extension '.pdl'. The 
  835. file name body will be the server file serial number.
  836.  
  837. 5.5 Upload 
  838.  
  839. Upload is used to send a file or files UP to the satellite.  (At least with 
  840. satellites it is easy to remember which is 'upload' and which is 'download'.)  
  841.  
  842. Before a file can be uploaded to a PACSAT, it must have a PACSAT File Header 
  843. added to it.  This is done with the program PFHADD.EXE. 
  844.  
  845. When you select 'U' from the main menu, PG automatically checks the current 
  846. directory for any files which are ready for uploading.  First it looks for 
  847. files that were partially uploaded on a previous pass (files with extension 
  848. '.pul') and continues these uploads.  Then it looks for files prepared by 
  849. PFHADD.EXE (files with extension '.out'), and uploads these files.
  850.  
  851. Before the first upload, PG will establish a link between your TNC and the 
  852. satellite (see 5.1). After the last file is uploaded, PG will disconnect.  
  853.  
  854. 5.5.1 Upload Progress Reporting
  855.  
  856. [Coming soon.]
  857.  
  858. 5.6 Terminal 
  859.  
  860. Terminal mode implements a dumb terminal.  To return to the main menu, type 
  861. the F1.  To send a break signal to your TNC, type F2.  Otherwise what you type 
  862. is sent to the TNC and what the TNC sends is displayed on the screen. When 
  863. entering terminal mode, PGDONE.TNC is sent to the TNC. When leaving terminal 
  864. mode, PG reconfigures itself for binary/transparent operation.
  865.  
  866. 5.7 Utilities
  867.  
  868. [Real soon.]
  869.  
  870.  
  871. 6.0 Helpful Hints
  872.  
  873. SCREEN SCROLLING - If your screen doesn't scroll correctly when using PG.EXE, 
  874. try setting "mode BW80" from the MS-DOS command line. This is a new bug in 
  875. which C6.00a interacts with some VGA BIOSes.
  876.  
  877. COUNTING DOWNLOADS - If you want to find out how many times a particular file 
  878. has been read, use the "One" directory command, which causes that file to be 
  879. updated in PG.DIR.
  880.  
  881. COMPRESSION - More files should be compressed. This saves space in the onboard 
  882. RAMDISK, uplink time, and downlink time. Compression of bulletins is a bit 
  883. difficult, since there is no real multi-platform compress/decompress package. 
  884. On the otherhand, PKZIP/UNZIP will serve 90% of the current users.
  885.  
  886.  
  887.  
  888.  
  889.  
  890.  
  891. DATA FLOW
  892. ---------
  893.   /------------------\
  894.   |                  |
  895.   |  MS-DOS FILE     | file: yourname
  896.   |                  |
  897.   \------------------/
  898.            |
  899.        pfhadd.exe
  900.            |
  901.   /------------------\
  902.   |  PACSAT HEADER   |
  903.   |------------------| file: yourname.out 
  904.   |  MS-DOS FILE     |
  905.   |                  |
  906.   \------------------/
  907.               
  908.   /------------------\
  909.   |  PACSAT HEADER   |
  910.   |------------------| file: xxx.dl 
  911.   |  MS-DOS FILE     |
  912.   |                  |
  913.   \------------------/
  914.            |
  915.         phs.exe
  916.            |-------------------------\
  917.   /------------------\      /------------------\
  918.   |   MS-DOS FILE    |      |   PACSAT HEADER  |
  919.   |                  |      |                  |
  920.   \------------------/      \------------------/
  921.  
  922.  
  923.  
  924.  
  925. RELEASE NOTES
  926. -------------
  927.  
  928. Two versions of PG were placed on general release 19 December 1990, one 
  929. through CompuServe in the U.S.A. and the other through broadcast on UO-14.
  930. These versions had only minor differences.
  931.  
  932. 21 Dec 90
  933.  
  934. Update released via UO-14. Version 901221l.
  935.  
  936. Fixed a problem which caused PG to hang when logging into the server.  This 
  937. was caused by cmd: mode data from the TNC interfering with the reception of 
  938. the login packet from the server.
  939.  
  940. 13 Jan 91
  941.  
  942. Fixed bug with caused pg to ignore partially-received directories.  Now, 
  943. whatever directory entries you receive will be processed into PG.DIR. This has 
  944. a secondary effect: when the received director entries are automatically 
  945. displayed (e.g. not with the View command), they will be in order from oldest 
  946. to newest.
  947.  
  948. Added detection of BBSTAT message before logging in. You should now expect the 
  949. following: 
  950.  
  951. When you select a command from the menu, you will be prompted for any 
  952. necessary input. 
  953.  
  954. Then PG will enter the "WAITING" state (reflected on the status line). During 
  955. this time, PG is monitoring UI frames from the satellite, looking for the 
  956. "PACSAT-12>BBSTAT: Open" message beacon. The key string is "open" in either 
  957. upper, lower or mixed case.
  958.  
  959. When the "open" message is received, a random delay is executed. This delay is 
  960. from one to <max_backoff> slots of <backoff_slot> clock ticks. These can be 
  961. set in pg.cfg and should be set to standard values distributed by the 
  962. satellite operators.
  963.  
  964. After the backoff delay, a connect attempt will be made. PG enters REQUEST 
  965. state (reflected on the status line). If the connect attempt is successful, 
  966. operations will proceed as normal.
  967.  
  968. If the connect attempt is unsuccessful (key word "disconnected" received from 
  969. TNC, in upper, lower, or mixed case), PG will return to the WAITING state.
  970.  
  971. You can break out of WAITING, REQUEST, or LINKED using the ESC key, as normal.
  972.  
  973. 14 Jan 91
  974.  
  975. Added hilight of mail to mycall in directory display.
  976.  
  977. Transmit "pgdone.tnc" file to tnc when quitting pg.
  978.  
  979. List command replaced by "mine", "bulls", "all". These have the following 
  980. actions:
  981.  
  982.      MINE
  983.      ----
  984.      Meaning: select files with destination "*mycall*" or "*myaddr*". (* is a 
  985.      wildcard, matching anything including 0 characters). If you set <myaddr> 
  986.      in PG.CFG, this will override <mycall>.  
  987.  
  988.      Time Limit: The time limit for this selection is taken from the file 
  989.      <hightime.my>. If the file does not exist, you will be prompted for the 
  990.      number of hours over which to make the directory search. 
  991.  
  992.      BULLS
  993.      -----
  994.      Meaning: select files with destination "all*", and files with names 
  995.      "CP*", "WD*", "AL*" or "EL*".
  996.  
  997.      Time Limit: The time limit for this selection is taken from the file 
  998.      <hightime.pg>. The time will be displayed, and you will be asked to 
  999.      confirm that you wish to use this time, or to enter a number of days 
  1000.      over which to make the search. 
  1001.  
  1002.      ALL
  1003.      ---
  1004.      Meaning: select all files.
  1005.  
  1006.      Time Limit: The time limit for this selection is taken from the file 
  1007.      <hightime.pg>. The time will be displayed, and you will be asked to 
  1008.      confirm that you wish to use this time, or to enter a number of days 
  1009.      over which to make the search. 
  1010.  
  1011. By studying the above definitions, you can select the commands which best suit 
  1012. your operations. I suggest that most stations use "M" and "B" on every pass. 
  1013. Then, if you are ever off the air so long that the "B" command time limit is 
  1014. older than a few days, select a new time limit for B. This will show you 
  1015. recent bulletins. Then use the "M" command to see all messages to you.
  1016.  
  1017.  
  1018. 16 Jan
  1019.  
  1020. Moved to C6.00a, realized great speed improvement.
  1021.  
  1022. Did find some strangeness with my VGA bios. If you experience problems, try 
  1023. setting your mode to BW80 with
  1024.  
  1025. C:>mode bw80
  1026.  
  1027.  
  1028. 17 Jan
  1029.  
  1030. Worked on the directory maintainance problem. 
  1031.  
  1032. PG.DIR is constructed by appending any received directory entries to the 
  1033. present contents of PG.DIR. This means that the most recent entries are always 
  1034. at the end of the file.
  1035.  
  1036. When you issue the "V" command, the contents of PG.DIR are read into memory if 
  1037. you have just run PG or if you have received new directory entries since your 
  1038. last "V" command. Because newly received entries are simply appended to the 
  1039. end of the file (for speed), some duplicate entries may be found as the file 
  1040. is read into memory. When a duplicate for a file is read, it replaces the 
  1041. previous representative and the dupe counter is incremented.
  1042.  
  1043. The read routine has been altered so that up to 1000 directory entries for 
  1044. different files can be read into memory at once. If your machine does not have 
  1045. enough memory for 1000 entries, PG will try to allocate memory for 900, 800, 
  1046. etc. (A more dynamic approach is possible, but not implemented.)
  1047.  
  1048. After displaying whatever directories have been read from the file, PG checks 
  1049. to see if there were more entries in the PG.DIR file than could be read into 
  1050. your memory. If so, directory archiving is invoked, and you are given the 
  1051. opportunity to have older entries removed to PGARCH.DIR.
  1052.  
  1053. If the archiving process is not invoked, PG checks to see if there were more 
  1054. than maxdupes (set in PG.CFG) duplicates in PG.DIR. If so, duplicates are 
  1055. removed, AND you are offered the opportunity to archive old entries.  This 
  1056. allows you to archive old entries before reaching 1000, to speed operation of 
  1057. your system.
  1058.  
  1059. A reasonable level of backing up is maintained throughout this process. If it 
  1060. blows up, your old PG.DIR file can be found in PGOLD.DIR. The old PGOLD can be 
  1061. found in PGOLD.BAK, etc.
  1062.  
  1063.  
  1064. 18 Jan
  1065.  
  1066. Released a version to HP for testing. 
  1067.  
  1068. Afterwards:
  1069.  
  1070. Rationalized the archive/crunch sequence a bit.
  1071.  
  1072. Added display of Keywords and Complete (40 character) title in the View mode. 
  1073. The additional information is accessed by the Right Arrow key.
  1074.  
  1075. Added "Backing off to slot n" message when in random backoff mode.
  1076.  
  1077. Removed AO16ACCESS and DISC_DELAY variables from PG.CFG.
  1078.  
  1079. 09 September 1991
  1080.  
  1081. Added simple automated operation. This allows the addition of command line 
  1082. parameters to make PG perform certain menu selections. Each parameter is a 
  1083. single menu selection preceded by a minus sign "-".
  1084.  
  1085. pg -u -q
  1086.  
  1087. is the most useful, in that it will upload any messages and then quit. 
  1088.  
  1089. 21 December 1991
  1090.  
  1091. The PG downloading system has been superceded by the broadcast download 
  1092. facility. The PG directory system is now outmoded by the broadcast directories 
  1093. now available in PB. PG should only be used for uploading files, and the next 
  1094. release of "PG" will probably be "PU", an upload-only program.
  1095.  
  1096. 25 February 1992
  1097.  
  1098. PG now includes only the Upload, Terminal and Quit commands. 
  1099.